everai app
应用管理
格式:
everai app [-h] {create,run,get,update,pause,resume,prepare,list,ls,queue,q,events,e,event,worker,workers,w,check,delete} ...
命令:
create
创建一个应用run
在本地环境运行应用进行测试get
获取一个应用的信息update
更新应用pause
停止应用,所有的worker都会停止resume
恢复使用应用prepare
准备应用,所有被@app.prepare
注解的方法都会被执行list (ls)
显示应用列表queue (q)
显示应用队列events (e, event)
显示应用事件worker (workers, w)
管理应用的workercheck
检查应用目录下的代码编译是否通过delete
删除应用
选项:
-h, --help
显示帮助信息
everai app create
通过manifest文件或者在app.py
中创建App对象来创建一个应用。
--from-file
通过一个manifest文件中的设置来创建应用,否则命令行工具会根据app.py
中的设置创建应用.
示例:
everai app create
格式:
everai app create [-h] [--dry-run] [-f FROM_FILE] [-n NAMESPACE]
选项:
-h, --help
显示帮助信息--dry-run
在客户端中试运行-n NAMESPACE, --namespace NAMESPACE
为应用指定命名空间,指定优先级:命令行 > [manifest文件 |app.py
] >default
-f FROM_FILE, --from-file FROM_FILE
通过manifest文件(yaml格式)创建应用,示例:--from-file <filename>
everai app run
在本地环境运行应用进行测试
示例:
everai app run
格式:
everai app run [-h] [--port PORT] [--listen LISTEN]
选项:
-h, --help
显示帮助信息--port PORT
指定服务端口,默认为80--listen LISTEN
通过设置特定的网络接口,绑定应用的API服务,用以限制通信。网络接口可以是一个具体的IP地址,例如:192.168.1.123。默认为0.0.0.0,支持从任何网络接口接收流量。
everai app get
获取一个应用的信息
示例:
everai app get <your app name>
格式:
everai app get [-h] [--namespace [NAMESPACE]] [--output [OUTPUT]] name
参数:
name
应用名称
选项:
-h, --help
显示帮助信息--namespace [NAMESPACE], -n [NAMESPACE]
应用的命名空间--output [OUTPUT], -o [OUTPUT]
输出格式,可选(json, yaml, table, wide),默认为table
everai app update
通过manifest 文件或者在app.py
中创建App对象来更新一个应用。
--from-file
通过一个manifest文件中的设置来更新应用,否则命令行工具会根据app.py
中的设置更新应用.
这个操作可能会引起worker容器的重新部署,比如镜像发生变化。
详细介绍请参考App Update。
示例:
everai app update
格式:
everai app update [-h] [--dry-run] [-f FROM_FILE]
选项:
-h, --help
显示帮助信息--dry-run
在客户端中试运行-f FROM_FILE, --from-file FROM_FILE
通过manifest文件(yaml格式)更新应用,示例:--from-file <filename>
everai app pause
停止应用,所有的worker都会停止
示例:
everai worker list <your app name>
查看应用的worker列表,可以看到有2个正在运行的worker。CREATED_AT
和DELETED_AT
使用UTC时间显示。
ID STATUS DETAIL_STATUS CREATED_AT DELETED_AT
---------------------- -------- --------------- ------------------------ ------------
8UtmxyvQ4qC67awQMKDgJb RUNNING FREE 2024-06-26T08:54:23+0000
Q6FRr6sRVPwFyyMfDCCEFY RUNNING FREE 2024-06-26T08:54:23+0000
执行如下的命令,停止示例中的应用。
everai app pause <your app name>
再次查看应用的worker列表,可以看到之前在运行的2个worker已经被停止。
everai worker list <your app name>
ID STATUS DETAIL_STATUS CREATED_AT DELETED_AT
---- -------- --------------- ------------ ------------
执行everai app list
,可以看到此时应用的状态是PAUSED
。
NAME NAMESPACE STATUS WORKERS CREATED_AT
------------------------------- ----------- -------- --------- ------------------------
test-start-14 default PAUSED 0/0 2024-06-18T08:49:30+0000
格式:
everai app pause [-h] [-n [NAMESPACE]] [--dry-run] name
参数:
name
应用名称
选项:
-h, --help
显示帮助信息-n [NAMESPACE], --namespace [NAMESPACE]
应用的命名空间--dry-run
在客户端中试运行
everai app resume
恢复使用应用
示例:
当你想恢复被停止(应用的状态为PAUSED
)的应用时,可以执行如下命令 :
everai app resume <your app name>
格式:
everai app resume [-h] [-n [NAMESPACE]] name
参数:
name
应用名称
选项:
-h, --help
显示帮助信息-n [NAMESPACE], --namespace [NAMESPACE]
应用的命名空间
everai app prepare
准备应用,所有被@app.prepare
注解的方法都会被执行
示例:
如果你的应用需要用到文件对象存储,那么在你的应用部署到云环境之前,你需要先创建一个卷。
在生产环境,对象存储是非常重要的,你可以通过下面的命令准备它。
这句命令会执行所有被@app.prepare
注解过的方法,在这些方法中你应该配置好文件数据。
everai app prepare
格式:
everai app prepare [-h]
选项:
-h, --help
显示帮助信息
everai app list (ls)
显示应用列表
示例:
everai app list
用例输出的结果如下所示,CREATED_AT
使用UTC时间显示。
NAME NAMESPACE STATUS WORKERS CREATED_AT
--------- ----------- -------- --------- ------------------------
get-start default DEPLOYED 3/3 2024-06-18T04:21:37+0000
格式:
everai app list [-h] [-n NAMESPACE] [-A] [--output [OUTPUT]]
选项:
-h, --help
显示帮助信息-n NAMESPACE, --namespace NAMESPACE
显示指定命名空间下的应用列表-A, --all-namespaces
显示所有命名空间下的应用列表--output [OUTPUT], -o [OUTPUT]
输出格式,可选(json, yaml, table, wide),默认为table
everai app queue (q)
显示应用队列
示例:
everai app queue <your app name>
用例输出的结果如下所示,CREATED_AT
使用UTC时间显示。
QUEUE_INDEX CREATE_AT QUEUE_REASON
------------- ------------------------ --------------
0 2024-07-03T22:24:07+0000 WorkerBusy
1 2024-07-03T22:24:07+0000 WorkerBusy
格式:
everai app queue [-h] [-n [NAMESPACE]] [--output [OUTPUT]] name
参数:
app_name
应用名称
选项:
-h, --help
显示帮助信息-n [NAMESPACE], --namespace [NAMESPACE]
应用的命名空间--output [OUTPUT], -o [OUTPUT]
输出格式,可选(json, yaml, table, wide),默认为table
everai app event
显示应用事件
示例:
everai app event <your app name>
用例输出的结果如下所示,CREATED_AT
使用UTC时间显示。
TYPE FROM CREATED_AT MESSAGE
------ --------- ------------------------ ------------------------------------------------------------------------------------------------
NORMAL AppSever 2024-06-25T12:27:05+0000 Worker/oFHDnZHrDMo5WHnQkhcegx is ready now
NORMAL AppSever 2024-06-25T12:27:05+0000 Worker/jQd38Z5HwRLv24x459CSBG is ready now
NORMAL Scheduler 2024-06-25T12:26:59+0000 Successfully assigned worker/oFHDnZHrDMo5WHnQkhcegx to node/5a684c93-84c0-4078-821c-a4aeccb61407
NORMAL Scheduler 2024-06-25T12:26:59+0000 Successfully assigned worker/jQd38Z5HwRLv24x459CSBG to node/5a684c93-84c0-4078-821c-a4aeccb61407
格式:
everai app events [-h] [-n [NAMESPACE]] [--output [OUTPUT]] name